5 research outputs found

    On the Succinctness of Idioms for Concurrent Programming

    Get PDF

    Model-Checking Behavioral Programs

    No full text
    System specifications are often structured as collections of scenarios and use-cases that describe desired and forbidden sequences of events. A recently proposed behavioral programming approach, which evolved from the visual language of live sequence charts (LSCs), calls for coding software modules in alignment with such scenarios. We present a methodology and a supporting model-checking tool for verifying behavioral Java programs, without having to first translate them into a specific input language for the model checker. Our method facilitates early discovery of conflicting or under-specified scenarios, which can often be resolved by adding new scenarios rather than by changing existing code. Also, counterexamples provided by the tool are themselves event sequences that can serve directly for refinements and corrections. Our tool reduces the size of the execution state-spaceusinganabstractionthatfocusesonbehaviorally interesting states and treats transitions between them as atomic

    Reasoning about online algorithms with weighted automata

    No full text
    corecore